package com.hcms.mybatis.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.util.Date;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

/**
 * <p>
 * 后台菜单表
 * </p>
 *
 * @author achenxw@126.com
 * @since 2023-03-26
 */
@Getter
@Setter
@TableName("sys_menu")
@ApiModel(value = "SysMenu对象", description = "后台菜单表")
public class SysMenu implements Serializable {

    private static final long serialVersionUID = 1L;

    //目录类型 0-导航链接 1-功能权限
    public static final Integer MENU_TYPE_NAV = 0;
    public static final Integer MENU_TYPE_PERM = 1;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty("父级ID")
    private Long parentId;

    @ApiModelProperty("ID层级列表，多个用逗号隔开")
    private String idList;

    @ApiModelProperty("栏目类型：0->导航链接；1->功能权限")
    private Integer menuType;

    @ApiModelProperty("链接地址/权限标识")
    private String path;

    @ApiModelProperty("关联组件")
    private String component;

    @ApiModelProperty("组件名")
    private String name;

    @ApiModelProperty("重定向地址")
    private String redirect;

    @ApiModelProperty("菜单标题")
    private String metaTitle;

    @ApiModelProperty("前端图标")
    private String metaIcon;

    @ApiModelProperty("导航隐藏")
    private Integer metaHidden;

    @ApiModelProperty("总是显示")
    private Integer metaAlwaysShow;

    @ApiModelProperty("显示所需权限")
    private String metaPerms;

    @ApiModelProperty("缓存组件")
    private Integer metaKeepAlive;

    @ApiModelProperty("排序")
    private Integer sort;

    @ApiModelProperty("备注信息")
    private String remark;

    @ApiModelProperty("创建时间")
    private Date createTime;


}
